<%@page import="co.gov.medellin.ssti.sub.web.decorator.NumeroDecoratorImpl"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>

<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/displaytag-11.tld" prefix="display"%>
<%@ page import="java.util.*,java.text.SimpleDateFormat"%>
<%@ page import="com.cs.beneficios.common.ConnectionFactory"%>
<%@ page
	import="com.cs.beneficios.business.model.RepDetBeneficiarioVO,com.cs.beneficios.business.model.RepAtributoVO"%>

<html>
<head>
<script type="text/javascript"
	src="<%=request.getContextPath() + "/js/popUP.js"%>"></script>
<link href="<%=request.getContextPath() + "/css/bloques.css"%>"
	rel="stylesheet" type="text/css">
<!--<link href="<%=request.getContextPath() + "/css/table.css"%>" rel="stylesheet" type="text/css">-->

<script src="<%=request.getContextPath()%>/js/displaytag.js"
	type="text/javascript"></script>
</head>
<body>
	<form name="frmreporte"
		action="<%=request.getContextPath()
					+ "/Reportes/Detallados/GenerarSelect.do"%>"
		method="get">

		<logic:present scope="request" name="msg">
			<BR>
			<DIV align="center" class="titulosenblanco">
				<strong><%=(String) request.getAttribute("msg")%></strong>
			</DIV>
			<BR>
		</logic:present>

		<logic:notPresent scope="request" name="msg">

			<div align="center">
				<logic:present name="listareporte">
					<%
						List lReporte = (List) session.getAttribute("listareporte");
								//String programa ="";
								//String beneficio ="";
								//String sede ="";
								if (lReporte.size() > 0) {
									//List todosGene = new LinkedList();
									//List todosEspe = new LinkedList();
									//Vector valoresGene = new Vector();
									//Vector nombresGene = new Vector();
									//Vector valoresEspe = new Vector();
									//Vector nombresEspe = new Vector();
									List lGenericos = new LinkedList();
									List lEspecificos = new LinkedList();
									RepAtributoVO atrVO = null;
									String Generales = null;
									//String Especificos = null;
									//String EspecificosGenericos = null; //Campo1, Campo2...

									RepDetBeneficiarioVO repDetBen = (RepDetBeneficiarioVO) session
											.getAttribute("Parametros");
									//for(int k=0;k<lReporte.size();k++)
									//{
									//RepDetBOTVO repVO = (RepDetBOTVO)lReporte.get(k);
									//programa = repVO.getNombrePrograma();
									//beneficio = repVO.getNombreSubprograma();
									//sede = repVO.getNombreSede();
									lGenericos = (List) session
											.getAttribute("listageneral");
									//lEspecificos = (List)session.getAttribute("listaEspecificos");

									if (lGenericos != null && lGenericos.size() > 0) {
										Generales = "";

										for (int i = 0; i < lGenericos.size(); i++) {
											atrVO = (RepAtributoVO) lGenericos.get(i);

											Generales += atrVO.getNombre() + " ";
										}
									}

									//lGenericos = (List)repVO.getAtributosGenerales();
									//lEspecificos = (List)repVO.getAtributosEspecificos();
									//if(lGenericos != null) todosGene.addAll(lGenericos);
									//if(lEspecificos != null) todosEspe.addAll(lEspecificos);
									//}
									//int f=0;
									//int g=0;
									//String width = "";
									/*if(lEspecificos != null)
									{
									  if((lGenericos.size()+lEspecificos.size()) >6) width  = (70+((lGenericos.size()+lEspecificos.size()) *2))+"%";
									  else width ="100%";
									}else
									{*/
									/*	//fsr
									if (lGenericos.size() > 6)
										width = (70 + (lGenericos.size() * 2)) + "%";
									else
										width = "50%";
									*/ //fsr
									//}
									String width = "100%";
					%>
					<div align="center">
						<table
							style="border: 0;padding: 2px;border-spacing: 3px;width: <%=width%>">
							<tr>
								<td>
									<div align="center" class="titulosenblanco">
										Reporte Detallado Beneficiarios
									</div>
								</td>
							</tr>
							<tr>
								<td>
									<div align="center" class="titulosenblanco">
										<%
											Calendar cal = Calendar.getInstance();
														SimpleDateFormat formato = new SimpleDateFormat(
																"dd/MM/yyyy hh:mm");
										%>
										Fecha:
										<%=formato.format(cal.getTime())%>
										<% if(repDetBen.getDesde() != null && 
											repDetBen.getDesde().length() > 0 &&
											repDetBen.getHasta() != null &&
											repDetBen.getHasta().length() > 0){ %>
										<br>
										Fecha Inicial: <%= repDetBen.getDesde() %>
										- Fecha Final: <%= repDetBen.getHasta() %>
										<% } %>
									</div>
								</td>
							</tr>

							<tr>
								<td>
									<div align="center" class="titulosenblanco">
										<P align="center">&nbsp;</P>
												<%
												if (repDetBen.getCodePrograma() != null) {
												%>
											<P class="titulosenblanco">
												Programa:
												<%=repDetBen.getNombrePrograma()%>
											</P><%
 												}
 												if (repDetBen.getCodeSubprograma() != null) {
 												%>
											<P class="titulosenblanco">
												Beneficio:
												<%=repDetBen.getNombreSubprograma()%>
											</P><%
 												}
 												if (repDetBen.getCodeSede() != null) {
 												%>
												<P class="titulosenblanco">
													Sede:
													<%=repDetBen.getNombreSede()%>
												</P><%
 												}
 												if (repDetBen.getCantidadBeneficiarios() != null) {
 													%>
												<P class="titulosenblanco">
													Cantidad de Beneficiarios:
													<%= NumeroDecoratorImpl.dF.format(repDetBen.getCantidadBeneficiarios()) %>
												</P><%
 												}
 													%> 
																																						
									</div>
								</td>								
							</tr>
							<tr>
								<td>
									<div align="center">
										<%
											//for(int l=0;l<todosGene.size();l++/*=(todosGene.size()/2)*/)
														/*{
														   RepAtributoVO repAtr = (RepAtributoVO)todosGene.get(l);
														   String valor = repAtr.getValor();
														   String nombre = repAtr.getNombre();
														   if((Object)valor == null) valor ="";
														   valoresGene.add(valor);
														   nombresGene.add(nombre);
														   //ultpos = l;
														}
														
														for(int l=0;l<todosEspe.size();l++)
														{
														   RepAtributoVO repAtr = (RepAtributoVO)todosEspe.get(l);
														   String valor = repAtr.getValor();
														   String nombre = repAtr.getNombre();
														   if((Object)valor == null) valor ="";
														   valoresEspe.add(valor);
														   nombresEspe.add(nombre);
														   
														}*/
										%>
										<display:table name="sessionScope.listareporte" pagesize="200"
											id="report"
											requestURI='<%=request.getContextPath()
									+ "/Reportes/Detallados/GenerationReportBeneficiario.do"%>'
											export="true" cellpadding="3" cellspacing="1"
											style="width:100%" class="bordestable">

											<%
												if (Generales != null) {
																	if (Generales.indexOf("TIPO_DOCUMENTO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="TIPO DOCUMENTO" class="Numero" sortable="true">
												<bean:write name="report" property="tipoDocumento" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("NUMERO_DOCUMENTO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="NUMERO DOCUMENTO" class="Numero" sortable="true">
												<bean:write name="report" property="numeroDocumento" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("PRIMER_NOMBRE") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="PRIMER NOMBRE" class="Numero" sortable="true">
												<bean:write name="report" property="nombre1" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("SEGUNDO_NOMBRE") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="SEGUNDO NOMBRE" class="Numero" sortable="true">
												<bean:write name="report" property="nombre2" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("PRIMER_APELLIDO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="PRIMER APELLIDO" class="Numero" sortable="true">
												<bean:write name="report" property="primerApellido" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("SEGUNDO_APELLIDO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="SEGUNDO APELLIDO" class="Numero" sortable="true">
												<bean:write name="report" property="segundoApellido" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("DIRECCION_DESCRIPTIVA") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="DIRECCION DESCRIPTIVA" class="Numero" sortable="true">
												<bean:write name="report" property="dirDescriptiva" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("DIRECCION_ENCASILLADA") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="DIRECCION ENCASILLADA" class="Numero" sortable="true">
												<bean:write name="report" property="dirEncasillada" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("SEXO") != -1) {
											%>
											<display:column headerClass="headerTable" title="SEXO"
												class="Numero" sortable="true">
												<bean:write name="report" property="sexo" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("FECHA_NACIMIENTO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="FECHA NACIMIENTO" class="Numero" sortable="true">
												<bean:write name="report" property="fechaNacimiento" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("VFL_CODIGO_COMUNA") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="COMUNA/CORREGIMIENTO" class="Numero" sortable="true">
												<bean:write name="report" property="vflComuna" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("VFL_CODIGO_ZONA") != -1) {
											%>
											<display:column headerClass="headerTable" title="ZONA"
												class="Numero" sortable="true">
												<bean:write name="report" property="descZona" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("LOCALIZACION_COBAMA") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="LOCALIZACION COBAMA" class="Numero" sortable="true">
												<bean:write name="report" property="cobama" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("VFL_CODIGO_BARRIO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="BARRIO/VEREDA" class="Numero" sortable="true">
												<bean:write name="report" property="descBarrio" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("TELEFONO") != -1) {
											%>
											<display:column headerClass="headerTable" title="TELEFONO"
												class="Numero" sortable="true">
												<bean:write name="report" property="telefono" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("ETNIA") != -1) {
											%>
											<display:column headerClass="headerTable" title="ETNIA"
												class="Numero" sortable="true">
												<bean:write name="report" property="etnia" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("CORREO_ELECTRONICO") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="CORREO ELECTRONICO" class="Numero" sortable="true">
												<bean:write name="report" property="mail" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("FICHA_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="FICHA SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="fichaSisben" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("HOGAR_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="HOGAR SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="hogar" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("ORDEN_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="ORDEN SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="ordenSisben" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("NIVEL_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="NIVEL SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="nivelSisben" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("PUNTAJE_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="PUNTAJE SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="puntajeSisben" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("FE_ENCUESTA_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="FECHA ENCUESTA SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="fechaEncuesta" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("DISCAPACIDAD_SISBEN") != -1) {
											%>
											<display:column headerClass="headerTable"
												title="DISCAPACIDAD SISBEN" class="Numero" sortable="true">
												<bean:write name="report" property="discapacidad" />
											</display:column>
											<%
												}
																	if (Generales.indexOf("EDAD") != -1) {
											%>
											<display:column headerClass="headerTable" title="EDAD"
												class="Numero" sortable="true">
												<bean:write name="report" property="edad" />
											</display:column>
											<%
												}
																	if (repDetBen.getCodePrograma() == null
																			&& repDetBen.getCodeSubprograma() == null
																			&& repDetBen.getCodeSede() != null) {
											%>
											<display:column headerClass="headerTable" title="PROGRAMA"
												class="Numero" sortable="true">
												<bean:write name="report" property="programa" />
											</display:column>
											<display:column headerClass="headerTable" title="BENEFICIO"
												class="Numero" sortable="true">
												<bean:write name="report" property="beneficio" />
											</display:column>
											<%
												} else if (repDetBen.getCodePrograma() != null
																			&& repDetBen.getCodeSubprograma() == null) {
											%>
											<display:column headerClass="headerTable" title="BENEFICIO"
												class="Numero" sortable="true">
												<bean:write name="report" property="beneficio" />
											</display:column>
											<%
												}
																}
											%>
										</display:table>
									</div>
								</td>
							</tr>
						</table>
					</div>
					<%
						} else {
					%>
					<BR>
					<DIV align="center" class="titulosenblanco">
						<strong>No hay registros que cumplan con los filtros o
							condiciones seleccionadas</strong>
					</DIV>
					<BR>
					<%
						}
					%>
				</logic:present>

				<logic:notPresent name="listareporte">

					<BR>
					<DIV align="center" class="titulosenblanco">
						<strong>No hay registros que cumplan con los filtros o
							condiciones seleccionadas</strong>
					</DIV>
					<BR>

				</logic:notPresent>

			</div>
		</logic:notPresent>
		<logic:present scope="request" name="msg">
			<%
				request.removeAttribute("msg");
			%>
		</logic:present>
	</form>
</body>
</html>